perl 数组操作

您所在的位置:网站首页 nginx流控 数组第一个元素值 perl 数组操作

perl 数组操作

2024-07-14 09:06:22| 来源: 网络整理| 查看: 265

数组末端元素操作 pop、push @quarry = qw(bedrock slate lava granite); =begin comment @quarry 初始值是(bedrock,slate,lava,granite) =cut

pop 取出数组中最后一个元素并将它返回

$rock1 = pop @quarry; $rock2 = pop(@quarry); =begin comment $rock1 的值为:granite $rock2 的值为:lava quarry 现在的值为:(bedrock,slate) =cut

注意到上面的代码中,pop 后面的括号可加可不加,这是 perl 的惯例:只要不会因为拿掉括号就改变原意,括号就是可省略的。 如果数组是空的, pop 将不会执行任何操作且直接返回 undef。

与 pop 相对应的是 push 操作,添加一个或一串元素到数组末端,同样 push 后面的括号可加可不加。

push (@quarry, 'dolomite'); =begin comment 末端追加一个元素 quarry 现在的值为:(bedrock,slate,dolomite) =cut push @quarry, 'quartz'; =begin comment 再追加一个元素 quarry 现在的值为:(bedrock,slate,dolomite,quartz) =cut @others = qw(schist breccia marble); push @quarry, @others; =begin comment 也可以追加另一个数组中的元素 quarry 现在的值为:(bedrock,slate,dolomite,quartz,schist,breccia,marble) =cut

push 可以向末端追加多个元素,注意最后一个语句,这里并不是追加另一个名为 others 的数组,而是追加数组 others 中的元素,数组的元素不可以是另一个数组而只能是标量,这里其实是把数组名展开成它所包含的元素列表。

数组首位元素操作 shift、unshift

类似 pop,shift 取出首位元素并将它返回,如果数组为空,将不执行任何操作,并返回 undef。

$rock1 = shift (@quarry); $rock2 = shift @quarry; =begin comment rock1 的值为 bedrock rock2 的值为 slate quarry 现在的值为:(dolomite,quartz,schist,breccia,marble) =cut

相对应的,unshift 向数组头部插入一个或一组元素。

unshift(@quarry, 'lava'); @others = qw(feldspar granite); unshift @quarry, @others; =begin comment quarry 现在的值为:(feldspar,granite,lava,dolomite,quartz,schist,breccia,marble) =cut

shift、unshift 后面的括号同样可加可不加

使用 splice 添加或移除数组中间的元素

splice 函数的语法如下:

splice @ARRAY, OFFSET [ , LENGTH [ , LIST ] ]

各参数含义如下: @ARRAY:操作对象,必须是数组。 OFFSET:起始位置的索引。 LENGTH:操作的元素个数,0 表示在 OFFSET 处添加元素,大于 0 表示删除起始索引处开始的 LENGTH 个元素。 LIST:添加的元素列表。

删除指定位置到数组末端的全部元素:

@removed = splice @quarry, 5; =begin comment 从索引位置为 5 的元素开始一直到末尾的元素全部取出,并返回。 此时, @removed 的值为:(schist,breccia,marble) @quarry 的值为:(feldspar,granite,lava,dolomite,quartz) =cut

删除指定位置开始的 n 个元素:

@removed = splice(@quarry, 1, 2); =begin comment 删除从索引位置为 1 开始的 2 个元素,并返回。 此时, @removed 的值为:(granite,lava) @quarry 的值为:(feldspar,dolomite,quartz) =cut

LENGTH 的值为 0 时,在指定位置添加元素:

@others = qw(bedrock slate); splice(@quarry, 1, 0, @others); =begin comment 在索引位置为 1 处,添加 @others 中的元素,此时, @quarry 的值为:(feldspar,bedrock,slate,dolomite,quartz) =cut splice @quarry 2, 0, 'lava'; =begin comment 在索引位置为 2 处添加一个元素,此时, @quarry 的值为:(feldspar,bedrock,lava,slate,dolomite,quartz) =cut

合并上述操作:

splice @quarry, 1, 3, qw(evaporite tuff); =begin comment 从索引为 1 的位置开始,删除 3 个元素,再追加 2 个元素,此时, @quarry 的值为:(feldspar,evaporite,tuff,dolomite,quartz) =cut 数组最后一个元素的索引值 $#ARRAY $ix_last = $#quarry =begin comment $ix_last 的值为 4 =cut


【本文地址】

公司简介

联系我们

今日新闻


点击排行

实验室常用的仪器、试剂和
说到实验室常用到的东西,主要就分为仪器、试剂和耗
不用再找了,全球10大实验
01、赛默飞世尔科技(热电)Thermo Fisher Scientif
三代水柜的量产巅峰T-72坦
作者:寞寒最近,西边闹腾挺大,本来小寞以为忙完这
通风柜跟实验室通风系统有
说到通风柜跟实验室通风,不少人都纠结二者到底是不
集消毒杀菌、烘干收纳为一
厨房是家里细菌较多的地方,潮湿的环境、没有完全密
实验室设备之全钢实验台如
全钢实验台是实验室家具中较为重要的家具之一,很多

推荐新闻


图片新闻

实验室药品柜的特性有哪些
实验室药品柜是实验室家具的重要组成部分之一,主要
小学科学实验中有哪些教学
计算机 计算器 一般 打孔器 打气筒 仪器车 显微镜
实验室各种仪器原理动图讲
1.紫外分光光谱UV分析原理:吸收紫外光能量,引起分
高中化学常见仪器及实验装
1、可加热仪器:2、计量仪器:(1)仪器A的名称:量
微生物操作主要设备和器具
今天盘点一下微生物操作主要设备和器具,别嫌我啰嗦
浅谈通风柜使用基本常识
 众所周知,通风柜功能中最主要的就是排气功能。在

专题文章

    CopyRight 2018-2019 实验室设备网 版权所有 win10的实时保护怎么永久关闭